package com.zs.usc.token;

import com.zs.usc.vo.CurrentUserInfo;

/**
 * @author Zero
 * @description token管理器接口
 * @date 2021/11/13 14:25
 */
public interface ITokenManager {

    /**
     * 用户授权成功后将授权信息存入
     *
     * @param token
     * @param loginUser
     */
    void addToken(String token, CurrentUserInfo loginUser);

    /**
     * 移除令牌
     *
     * @param token
     */
    default void remove(String token) {

    }

    /**
     * 验证令牌有效性,有效则延长session生命周期
     *
     * @param token
     * @return
     */
    CurrentUserInfo validate(String token);

}
